Interleaved gradient noise
https://gyazo.com/4cb098230943cec8116725b422a280da
code:gradientNoise.glsl
precision lowp float;
uniform vec2 resolution;
uniform float time;
float gradientNoise(vec2 uv){return fract(52.9829189 * fract(dot(uv,vec2(0.06711056,0.00583715))));}
float nrand(vec2 uv){return fract(sin(dot(uv,vec2(12.9898,78.233))) * 43758.5453);}
vec2 rot(vec2 p, float a){return vec2(p.x*cos(a)+p.y*sin(a),p.x*sin(a)-p.y*cos(a));}
void main(){
vec2 p = (gl_FragCoord.xy-resolution)/max(resolution.x,resolution.y);
vec3 col = vec3(gradientNoise(50.*fract(rot(p,1.)+.01*time)));
gl_FragColor = vec4(col*nrand(p), 1.0);
}
https://gyazo.com/5f852e82966861f7674a7772bff22de9